<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/ProBugTracker.Domain" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/ProBugTracker.Domain" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:complexType name="User">
    <xs:sequence>
      <xs:element minOccurs="0" name="Email" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="FirstName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="LastName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="MiddleName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Password" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Role" nillable="true" type="tns:ArrayOfUserAssignRole" />
      <xs:element minOccurs="0" name="UserID" type="xs:int" />
      <xs:element minOccurs="0" name="UserName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ValidationResult" nillable="true" type="tns:UserValidationPresenter" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="User" nillable="true" type="tns:User" />
  <xs:complexType name="ArrayOfUserAssignRole">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="UserAssignRole" nillable="true" type="tns:UserAssignRole" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfUserAssignRole" nillable="true" type="tns:ArrayOfUserAssignRole" />
  <xs:complexType name="UserAssignRole">
    <xs:sequence>
      <xs:element minOccurs="0" name="Active" type="xs:boolean" />
      <xs:element minOccurs="0" name="EndDate" type="xs:dateTime" />
      <xs:element minOccurs="0" name="PermissionLevel" nillable="true" type="tns:ArrayOfRoleAssignPermission" />
      <xs:element minOccurs="0" name="RoleName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Startdate" type="xs:dateTime" />
      <xs:element minOccurs="0" name="UserRoleID" type="xs:int" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="UserAssignRole" nillable="true" type="tns:UserAssignRole" />
  <xs:complexType name="ArrayOfRoleAssignPermission">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="RoleAssignPermission" nillable="true" type="tns:RoleAssignPermission" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfRoleAssignPermission" nillable="true" type="tns:ArrayOfRoleAssignPermission" />
  <xs:complexType name="RoleAssignPermission">
    <xs:sequence>
      <xs:element minOccurs="0" name="Active" type="xs:boolean" />
      <xs:element minOccurs="0" name="PermissionEndDate" type="xs:dateTime" />
      <xs:element minOccurs="0" name="PermissionName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="PermissionStartDate" type="xs:dateTime" />
      <xs:element minOccurs="0" name="UserRoleID" type="xs:int" />
      <xs:element minOccurs="0" name="UserRolePermissionID" type="xs:int" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="RoleAssignPermission" nillable="true" type="tns:RoleAssignPermission" />
  <xs:complexType name="UserValidationPresenter">
    <xs:sequence>
      <xs:element minOccurs="0" name="ExceptionMessage" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="IsValidUser" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="UserValidationPresenter" nillable="true" type="tns:UserValidationPresenter" />
</xs:schema>